package com.gitee.kenewstar.migration.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.gitee.kenewstar.migration.entity.Lov;
import com.gitee.kenewstar.migration.entity.LovTl;
import com.gitee.kenewstar.migration.entity.LovValue;
import com.gitee.kenewstar.migration.entity.LovValueTl;
import com.gitee.kenewstar.migration.entity.LovViewHeader;
import com.gitee.kenewstar.migration.entity.LovViewHeaderTl;
import com.gitee.kenewstar.migration.entity.LovViewLine;
import com.gitee.kenewstar.migration.entity.LovViewLineTl;

import java.util.List;

/**
 * @author kenewstar
 */
@SuppressWarnings("all")
public interface LovService {

    String LOV_CODE = "lov_code";
    String VIEW_CODE = "view_code";

    List<LovTl> devSelectTl(QueryWrapper<LovTl> queryWrapper);

    List<Lov> devSelectLov(List<Long> lovIds);

    List<Lov> devSelectLovList(List<Lov> list);

    List<Lov> devSelectLov(List<String> lovCodeList, Long tenantId);

    List<LovValue> devSelectLovValue(QueryWrapper<LovValue> queryWrapper);

    List<LovValueTl> devSelectLovValueTl(QueryWrapper<LovValueTl> queryWrapper);

    void uatInsertLovTl(List<LovTl> list);

    void uatInsertLov(List<Lov> list);

    void uatInsertLovValue(List<LovValue> list);

    void uatInsertLovValueTl(List<LovValueTl> list);

    List<Lov> uatSelectLov(List<String> lovCodeList);

    List<LovViewHeader> devSelectLovHeader(List<String> lovViewCodeList, Long tenantId);

    List<LovViewHeader> devSelectLovHeaderList(List<LovViewHeader> list);

    List<LovViewHeaderTl> devSelectLovHeaderTl(QueryWrapper<LovViewHeaderTl> queryWrapper);

    List<LovViewLine> devSelectLovLine(QueryWrapper<LovViewLine> queryWrapper);

    List<LovViewLineTl> devSelectLovLineTl(QueryWrapper<LovViewLineTl> queryWrapper);

    void uatInsertLovHeader(List<LovViewHeader> list);

    void uatInsertLovHeaderTl(List<LovViewHeaderTl> list);

    void uatInsertLovLine(List<LovViewLine> list);

    void uatInsertLovLineTl(List<LovViewLineTl> list);

}
